home *** CD-ROM | disk | FTP | other *** search
/ SGI Developer Toolbox 6.1 / SGI Developer Toolbox 6.1 - Disc 4.iso / src / demos / GL / closeup / clang.h < prev    next >
C/C++ Source or Header  |  1994-08-01  |  2KB  |  69 lines

  1. /*
  2.  * Copyright 1992, 1993, 1994, Silicon Graphics, Inc.
  3.  * All Rights Reserved.
  4.  *
  5.  * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Silicon Graphics, Inc.;
  6.  * the contents of this file may not be disclosed to third parties, copied or
  7.  * duplicated in any form, in whole or in part, without the prior written
  8.  * permission of Silicon Graphics, Inc.
  9.  *
  10.  * RESTRICTED RIGHTS LEGEND:
  11.  * Use, duplication or disclosure by the Government is subject to restrictions
  12.  * as set forth in subdivision (c)(1)(ii) of the Rights in Technical Data
  13.  * and Computer Software clause at DFARS 252.227-7013, and/or in similar or
  14.  * successor clauses in the FAR, DOD or NASA FAR Supplement. Unpublished -
  15.  * rights reserved under the Copyright Laws of the United States.
  16.  */
  17. /***
  18.     clang.h - general purpose types and constants for the C language
  19.     If assert() is used (see assert.h) be sure to include <stdio.h> first.
  20.     $Header: /bvd/att/usr/src/cmd/demo/src/closeup/RCS/clang.h,v 1.2 89/02/08 18:49:38 olson Exp $
  21. ***/
  22.  
  23. /* assert macro for program verification */
  24. #include "assert.h"
  25.  
  26. /* don't redefine what's in System V <sys/types.h> */
  27. /* (4.3bsd is similar but uses _TYPES_), (but why not just include sys/types.h? */
  28. #if !defined(__TYPES__) && !defined(_TYPES_) && !defined(TYPES_H) && !defined(_TYPES_H_)
  29.     typedef  unsigned char   u_char;
  30.     typedef  unsigned short  u_short;
  31.     typedef  unsigned int    u_int;
  32.     typedef  unsigned long   u_long;
  33. #endif
  34.  
  35. typedef  int         BOOL;
  36. typedef  char         *STRINGP;
  37. typedef  char         *ADDRESS;
  38. typedef  void         (*FUNC)();
  39.  
  40. typedef  char         *StringPtr;
  41. typedef  int         Bool;
  42. typedef  char         *Address;
  43. typedef  void         (*FuncPtr)();
  44.  
  45. #ifndef FALSE
  46. #   define  FALSE  0
  47. #   define  TRUE   (!FALSE)
  48. #endif
  49.  
  50. #ifndef  NULL
  51. #   define  NULL  0
  52. #endif
  53.  
  54. #define  AND  &&
  55. #define  OR   ||
  56. #define  NOT  !
  57. #define  BITXOR  ^
  58. #define  MOD  %
  59.  
  60. #define  ISNULLSTRING(s)  (((s) == NULL) OR (*(s) == '\0'))
  61. #define  MIN(a,b)   (((a) <= (b)) ? (a) : (b))
  62. #define  MAX(a,b)   (((a) >= (b)) ? (a) : (b))
  63. #define  ABS(v)        (((v) >= 0) ? (v) : -(v))
  64. #define  SIGN(v)    (((v) >= 0) ? 1 : -1)
  65.  
  66. /*** assume 'data' is a long or u_long ***/
  67. #define HIGH16(data) (0xffff & (data >> 16))
  68. #define LOW16(data) (0xffff & data)
  69.